{
  "properties" : { },
  "id" : "be89865140ab409085db6d0cc6d82452",
  "script" : null,
  "groupId" : "1952f25c81084e24b55b11385767dc38",
  "name" : "验证码",
  "createTime" : null,
  "updateTime" : 1663053863031,
  "lock" : null,
  "createBy" : null,
  "updateBy" : null,
  "path" : "/verification/code",
  "method" : "GET",
  "parameters" : [ ],
  "options" : [ {
    "name" : "require_login",
    "value" : "false",
    "description" : "该接口需要登录才允许访问",
    "required" : false,
    "dataType" : "String",
    "type" : null,
    "defaultValue" : null,
    "validateType" : null,
    "error" : null,
    "expression" : null,
    "children" : null
  } ],
  "requestBody" : "",
  "headers" : [ ],
  "paths" : [ ],
  "responseBody" : "{\n    \"code\": 200,\n    \"message\": \"success\",\n    \"data\": {\n        \"img\": \"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\",\n        \"uuid\": \"c26f75f10b1e4748a1f61cf439993c9a\"\n    },\n    \"timestamp\": 1663053633096,\n    \"executeTime\": 4\n}",
  "description" : null,
  "requestBodyDefinition" : null,
  "responseBodyDefinition" : {
    "name" : "",
    "value" : "",
    "description" : "",
    "required" : false,
    "dataType" : "Object",
    "type" : null,
    "defaultValue" : null,
    "validateType" : "",
    "error" : "",
    "expression" : "",
    "children" : [ {
      "name" : "code",
      "value" : "200",
      "description" : "",
      "required" : false,
      "dataType" : "Integer",
      "type" : null,
      "defaultValue" : null,
      "validateType" : "",
      "error" : "",
      "expression" : "",
      "children" : [ ]
    }, {
      "name" : "message",
      "value" : "success",
      "description" : "",
      "required" : false,
      "dataType" : "String",
      "type" : null,
      "defaultValue" : null,
      "validateType" : "",
      "error" : "",
      "expression" : "",
      "children" : [ ]
    }, {
      "name" : "data",
      "value" : "",
      "description" : "",
      "required" : false,
      "dataType" : "Object",
      "type" : null,
      "defaultValue" : null,
      "validateType" : "",
      "error" : "",
      "expression" : "",
      "children" : [ {
        "name" : "img",
        "value" : "iVBORw0KGgoAAAANSUhEUgAAAGQAAAAwCAYAAADn/d+1AAAHBElEQVR4Xu2aiW8UVRjA+UMUlBskIqIYURKJMSiKBiImXpggNeIRIBowBpRDrFoMCGKMkoaC5bBAS0EpgsUGLMR2W9puW9rdHtvSa3dbdrc7O7M7x+e8B/N25s2xs4vUMc4v+cIy75tp8/32fe/NTMeBi6MYRx9w+XdxhTgMV4jDcIU4DFeIw3CFOAxXiMNwhTgMV4jDcIU4DCKkJJmA9YkIjvIUq85xsUDiRQgf94Nv1XloeOQoeKYUgWf6AWhcUAKda6ogWnWdPsUSV8htkLg2At4nT0DN+ELLaHu1AviwvZq6QnKE7YhA/exiXfHNwvtUKQjRJH0ZHa6QHGlddlpTcNSe4ldDIHICiPEUxKr7oe2VCk1O94ZL9GV0uEJygPGGNYXu39NAp9xEAuhcW0XyaifuByFiPUv+s0JaC/PoQ2PGUFErKfLVh48AiBKdQuBHOCxCyY9U9tIpGlwhOTDwXSMpcOuLv9DDOtDuS8kPl/rpYQ1ZC/mD50geiqPyeebfD3OkMA+pwhCwb3YB83grMPd5IT6xEZg5zZBY1AbJT/pArGPo0whmQtYProPJ7XfhqGc9+Fgz1wRbg5vg6e6FMMc/A2b5JsPCrvk490qimrpCZoZPdqZnyIOHQRLMKyDI60ntpPQMGf1rkE7RkJWQC5QMdI75r2JOas8QMDOaID6+IWNwa3rkE+z/FLUQD1sD24NbYGr7eHLMKNYOvAu8xNOXMoUfZvG9hlJkNGPMCGysTst76Ahe9K2wLeR3SsaxVG4yPAt26oqeKZIb7d9cqYUs63lOV3yzQOKyYWBvAyk0Cv/blTBaO4QXbSQM77JePpPOmVAIw2Ud9GV02BJynpJxPEcZwpW4ptDsik4QqmK4fQGa9qwIop+D1A9B3LpI7r2NII1Yf7MU1EKUQO2pJHoEBvkBebKlIJDqhl3hHTDddw/JQZ9vCCP05SwZ/NGrmSlmUT/nEG5zdsgo5BwlozRHGQj2jU5SZO6tbrwtNENsTuA1RcnnT0foFENoIct7XgBGjNNpmPJYqSb3VKyMTrFG/v3DJT7wzDiok0BkyDePsT/76TNNsRRyVv5XLaNMlpEzCRHiU24VeEIDSAHr/TgCLe6KkNS+ED1siFrIlPa7oSPpo1M0zO+cS/L3Du+mh01hO6LQvPikToBZdLxzAS/wmTAVUkHJoNvYWMCu7EoL+XaIHjZELWRJYBE9rGNV3wqSXxDKp4cN4QIx3IaUYqMHir35NZBoGcGLNir8aM0QdH1wEa8dSl7LknIQWevWayhkCxvVyEDxbF69+rx/HCkurx8tLPDlNyCZ3w/sMj9eO4iQ3dkLQZ8zsW7gPZL/RWgbPWxI22tnSZHrZh7Ej0zMGKno1twYInFWGAoxiu1sDBbMuwjzZ1bhuC3k9sWX3QDuo15gl/q0C7hJ5CLks+BmeliHOj8/tJUe1oEeKqpbUfiYdUtE9H9TnxYorzciY77FthRSnGTgY9X/0VZXQRGTrSD+6AgwD2QWQEcuQr4KfU4P68hWSPCna6S49fcXW94UKgixpGaWRC/20SkEUyHKmlFJ7bJ8orFdO2JS3wd1hVaCmeWFxOJ24N4P4DyhlsHbYqcJuV7gIYW189hEoemJY+S84KE2ephgKORgMv3IQpRjJzdKxvLl1pW02q+aIHZwmm0sM7cZL9So8FLEeKFjl/sdJ6Tv6zpS2JbnT9HDpjQtPJ67EHpH1SsKsEE1S9C9SLYkCwbSMmZ6QerPsAWUnTPzWtJCdlk/A1K400LULQvdf4gJ446hBq0ZtZOLyHmR8z10CsGWEAQ6powjOZ0mrcsMbnU3KS77eua7Vv5MRNPSkFA73Gkh9KI+VNRCp+gY3Ocl+ZneidgWgtoUaldKzpfy51QWrYtb25OeIfKuSooatymEcCGme/iY3GbvbvdOC0G0Lk2/LfRMO4DvOcyIXR7A9ylKvn91JZ2iwbYQxDWBJzkoTpnkGcEXD2sKnHimHYSKKEhBHj/NRS1M+C0KbF56JqmD+9D6xY7CWAiJ1wU1uyb0ObDxMj4ujKZwG2MawxD49IomD215ue4YfTkNWQlBHJIXfHXrCojm33QNrAjMY626QtsN9iXrFzsKYyEEETrcprkLzxTonUimt4WIrIXEJQk2q+7kd8ity+5qgp7kopdRdLF1MakRkpuuQ6ooTI6hFgZ85hY5VkIQaHFGL6jo4tOB/kYLzR47ZC0EUSskNa3r1wz5atAjEvSgEH3jmdm33hLKxUazh83rgtT+MEjDNxWj7XB8WnotQS0uE2MpBIGeTaGdl2/lufQfyk0tgoZHf8bvSMIn/PiP6exChLg4A1eIw3CFOAxXiMNwhTgMV4jDcIU4DFeIw3CMkOpLBYbxf8MxQlxu4gpxGH8DojspoDYwL8UAAAAASUVORK5CYII=",
        "description" : "",
        "required" : false,
        "dataType" : "String",
        "type" : null,
        "defaultValue" : null,
        "validateType" : "",
        "error" : "",
        "expression" : "",
        "children" : [ ]
      }, {
        "name" : "uuid",
        "value" : "c26f75f10b1e4748a1f61cf439993c9a",
        "description" : "",
        "required" : false,
        "dataType" : "String",
        "type" : null,
        "defaultValue" : null,
        "validateType" : "",
        "error" : "",
        "expression" : "",
        "children" : [ ]
      } ]
    }, {
      "name" : "timestamp",
      "value" : "1663053633096",
      "description" : "",
      "required" : false,
      "dataType" : "Long",
      "type" : null,
      "defaultValue" : null,
      "validateType" : "",
      "error" : "",
      "expression" : "",
      "children" : [ ]
    }, {
      "name" : "executeTime",
      "value" : "4",
      "description" : "",
      "required" : false,
      "dataType" : "Integer",
      "type" : null,
      "defaultValue" : null,
      "validateType" : "",
      "error" : "",
      "expression" : "",
      "children" : [ ]
    } ]
  }
}
================================
import cn.hutool.captcha.LineCaptcha
import cn.hutool.captcha.generator.RandomGenerator
import cn.hutool.captcha.CaptchaUtil
import log
import java.io.ByteArrayOutputStream
import java.io.OutputStream
import org.ssssssss.magicboot.model.CodeCacheMap

RandomGenerator randomGenerator = new RandomGenerator("0123456789", 4);
LineCaptcha lineCaptcha = CaptchaUtil.createLineCaptcha(100, 48);
lineCaptcha.setGenerator(randomGenerator);
var uuid = UUID.randomUUID().toString().replace('-', '')
CodeCacheMap.put(uuid, lineCaptcha.getCode())
OutputStream bOut = new ByteArrayOutputStream();
lineCaptcha.write(bOut)
var bytes = bOut.toByteArray()
return {
    img: bytes,
    uuid: uuid
}